package com.pet.system.service;

import com.pet.common.model.PageModel;
import com.pet.system.domain.entity.SysRole;
import com.pet.system.domain.vo.SysRoleVO;

import java.util.List;
import java.util.Map;

/** @author Centaurea */
public interface ISysRoleService {
  /** 保存角色 1、保存角色信息 2、权限资源信息（先删除，再添加） */
  void save(SysRoleVO roleDto);

  /**
   * 删除角色 删除关联信息（角色用户、角色资源）、角色自身信息
   *
   * @param roleIds
   */
  void delete(List<Integer> roleIds);

  boolean updateStatus(Integer id, Integer status);

  /**
   * @param params
   * @return
   */
  List<SysRole> queryAll(Map<String, Object> params);

  /**
   * 根据条件 查询所有
   *
   * @param pageModel
   * @param params
   * @return
   */
  List<SysRole> queryAllByPage(PageModel<SysRole> pageModel, Map<String, Object> params);
}
